﻿using RndMaterialDisposalService.Models.Entitys;

namespace RndMaterialDisposalService.Services.Interface
{
    /// <summary>
    /// 
    /// </summary>
    public interface IWeinxinUserService
    {
        /// <summary>
        /// 
        /// </summary>
        /// <returns></returns>
        Task<List<UserMiddleDto>> GetAddUserList();
        /// <summary>
        /// 
        /// </summary>
        /// <returns></returns>
        Task<List<UserMiddleDto>> GetModifyUserList();
        /// <summary>
        /// 
        /// </summary>
        /// <returns></returns>
        Task<List<UserMiddleDto>> GetDeleteUserIdList();
        /// <summary>
        /// 
        /// </summary>
        /// <returns></returns>
        public Task<int> SyncUserToMiddleTable();
        /// <summary>
        /// 
        /// </summary>
        /// <param name="users"></param>
        /// <returns></returns>
        public Task<int> UpdateSyncStatus(List<UserMiddleDto> users);

        /// <summary>
        /// 
        /// </summary>
        /// <param name="users"></param>
        /// <param name="actionType"></param>
        /// <returns></returns>
        public Task<int> AddUserSyncLog(List<UserMiddleDto> users, string actionType);

        /// <summary>
        /// 
        /// </summary>
        /// <param name="users"></param>
        /// <returns></returns>
        public Task<int> DeleteMiddleTableUser(List<UserMiddleDto> users);
    }
}
